The speed at which a system can write data to persistent storage and read data from persistent storage is often a critical factor in the overall performance of the system. The traditional approach to transferring data to and from a persistent storage system requires processing by multiple layers of software, firmware, and hardware on both the client system and the persistent storage system. In addition, data is typically copied as it moves between these layers. As a result, extra latency is induced beyond the latency required to read or write the underlying physical storage medium, and this latency reduces the overall performance of the system.